package com.gggd.aopdemo.aop;

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

/**
 * @Description
 * @Author srx
 * @date 2021/12/24 17:29
 */
@Aspect
@Component
public class MyAop01 {
    /**
     * 定义一个切点：所有被GetMapping注解修饰的方法会织入advice
     */
    @Pointcut("@annotation(org.springframework.web.bind.annotation.GetMapping)")
    private void myAop01Pointcut() {}

    /**
     * Before表示myAop01将在目标方法执行前执行
     */
    @Before("myAop01Pointcut()")
    public void myAop01(){
        // 处理逻辑
        System.out.println("get请求成功");
    }
}
